import Qs from 'qs'
const baseURL = 'https://csapi.yingshishequ.com'
export function AxiosPost(url, data) {
	let Authorization = 'Bearer ' + uni.getStorageSync('ouid') + "." + uni.getStorageSync('token') + '.1'
	return new Promise((resolve, reject) => {
		uni.request({
			url: baseURL + url, //仅为示例，并非真实接口地址。
			data: Qs.stringify(data),
			method: 'POST',
			header: {
				'Authorization': Authorization,
				"Content-Type": "application/x-www-form-urlencoded; charset=UTF-8"
			},
			success: (res) => {
				if (url === '/api/login/operLogin') {
					// 判断token是否过去，是重新更新token
					uni.setStorageSync('token', res.data?.data?.token);
					uni.setStorageSync('ouid', res.data?.data?.ouid);
					Authorization = 'Bearer ' + uni.getStorageSync('ouid') + "." + uni
						.getStorageSync('token') + '.1'
				}
				if (res.data.code === 10000) {
					resolve(res.data)
				} else if (res.data.code === 300) {
					uni.showToast({
						title: res.data.message,
						icon: 'none',
						duration: 2000
					});


				} else if (res.data.code === 301) {
					uni.showToast({
						title: res.data.message,
						icon: 'none',
						duration: 2000
					});
					setTimeout(() => {
						uni.navigateTo({
							url: '/pages/login/login'
						})
					}, 2000)
				} else if (res.data.code === 303) {
					uni.showToast({
						title: res.data.message,
						icon: 'none',
						duration: 2000
					});
				} else if (res.data.code === 302) {
					uni.showToast({
						title: res.data.message,
						icon: 'none',
						duration: 2000
					});
				}

			},
			fail: (err) => {
				reject(err)
			}
		});
	})

}

// 登录
export function operLogin(params) {
	return AxiosPost('/api/login/operLogin', params)
}
// 商品分类
export function getgoodsgenreall(params) {
	return AxiosPost('/api/data/getgoodsgenreall', params)
}
// 服务站站点
export function getFwz(params) {
	return AxiosPost('/api/data/getFwz', params)
}
// 添加商品
export function saveshopgoods(params) {
	return AxiosPost('/api/shopgoods/saveshopgoods', params)
}
// 商品列表
export function shopgoodslist(params) {
	return AxiosPost('/api/shopgoods/shopgoodslist', params)
}
// 供应商列表
export function gyslist(params) {
	return AxiosPost('/api/shopgoods/gyslist', params)
}
// 选品
export function Selectgoods(params) {
	return AxiosPost('/api/shopgoods/Selectgoods', params)
}
// 已选品商品列表
export function selectgoodslist(params) {
	return AxiosPost('/api/shopgoods/selectgoodslist', params)
}
// 申请成为品鉴推荐师
export function savepjs(params) {
	return AxiosPost('/api/user/savepjs', params)
}
// 品鉴推荐师列表
export function pjsList(params) {
	return AxiosPost('/api/user/pjsList', params)
}
// 是否同意品鉴推荐师列表
export function checkPjs(params) {
	return AxiosPost('/api/user/checkPjs', params)
}
// 服务站商品详情
export function fwzGoodsInfo(params) {
	return AxiosPost('/api/shopgoods/fwzGoodsInfo', params)
}
// 服务站商品详情分享
export function goodsFxMa(params) {
	return AxiosPost('/api/user/goodsFxMa', params)
}
// 扫码核销
export function saomaHxCode(params) {
	return AxiosPost('/api/user/saomaHxCode', params)
}
//  普通订单  传值tg_order  为1  则 返回 合伙人的推广订单数据
export function fwzOrderList(params) {
	return AxiosPost('/api/user/fwzOrderList ', params)
}

// 退款 order_id      tk_status       tk_check_notes
export function tkOrder(params) {
	return AxiosPost('/api/user/tkOrder', params)
}
// 规则
export function rulevalue(params) {
	return AxiosPost('/api/index/rulevalue', params)
}
// 广告订单提交
export function saveadv(params) {
	return AxiosPost('/api/user/saveadv', params)
}
// 广告订单列表
export function advlist(params) {
	return AxiosPost('/api/user/advlist', params)
}
// 获取自身供应的服务站
export function getGysFwz(params) {
	return AxiosPost('/api/data/getGysFwz', params)
}
// 数据管理中心商品统计
export function goodsordercount(params) {
	return AxiosPost('/api/user/goodsordercount', params)
}

// 流水
export function logwalletlist(params) {
	return AxiosPost('/api/user/logwalletlist', params)
}
// 首页数据统计
export function nowDayCount(params) {
	return AxiosPost('/api/user/nowDayCount', params)
}
// 修改操作人数据
export function saveuserinfo(params) {
	return AxiosPost('/api/user/saveoperinfo', params)
}
// 提现
export function saveTcash(params) {
	return AxiosPost('/api/user/saveTcash', params)
}
// 提现列表
export function tcashList(params) {
	return AxiosPost('/api/user/tcashList', params)
}
// 选品商品信息
export function shopgoodsinfo(params) {
	return AxiosPost('/api/shopgoods/shopgoodsinfo', params)
}
// 选品商品信息
export function hhrgoodslist(params) {
	return AxiosPost('/api/shopgoods/hhrGoodsList', params)
}

// 协议
export function agreementlist(params) {
	return AxiosPost('/api/data/agreementlist', params)
}

// 核销
export function hxorder(params) {
	return AxiosPost('/api/user/hxorder', params)
}
// 核销
export function saomaHxList(params) {
	return AxiosPost('/api/user/saomaHxList', params)
}






// 首页轮播图
export function bannerlist(params) {
	return AxiosPost('/api/shopindex/bannerlist', params)
}
// 查询我的上级
export function parentinfo(params) {
	return AxiosPost('/api/user/parentinfo', params)
}
// 商品分类
export function genreList(params) {
	return AxiosPost('/api/shopindex/genrelist', params)
}
// 商品列表
export function goodslist(params) {
	// goods_name    商品名称
	// genre_id      分类id
	// area_id       区域id
	// order_sales   销量排序  0升序 1降序
	// order_price   价格排序   0升序 1降序
	return AxiosPost('/api/shopindex/goodslist', params)
}
// 商品详情
export function goodsdetails(params) {
	return AxiosPost('/api/shopindex/goodsdetails', params)
}
// 添加商品到购物车
export function addcart(params) {
	return AxiosPost('/api/shopcart/addcart', params)
}
// 查看购物车列表
export function cartlist(params) {
	return AxiosPost('/api/shopcart/cartlist', params)
}
// 删除购物车内商品
export function delCart(params) {
	return AxiosPost('/api/shopcart/delCart', params)
}
// 确认订单
export function ordersettlement(params) {
	return AxiosPost('/api/shoporder/ordersettlement', params)
}
// 提交订单
export function addorder(params) {
	return AxiosPost('/api/shoporder/addorder', params)
}
// 订单支付
export function orderpay(params) {
	return AxiosPost('/api/shoporder/orderpay', params)
}
// 首页商品分类区域
export function advdata(params) {
	return AxiosPost('/api/shopindex/advdata', params)
}
// 登录
export function Login(params) {
	return AxiosPost('/api/login/login', params)
}
// 获取商城信息
export function configshop(params) {
	return AxiosPost('/api/shopindex/configshop', params)
}
//获取用户信息
export function userinfo(params) {
	return AxiosPost('/api/user/userinfo', params)
}
// 获取验证码
export function sendMsg(params) {
	return AxiosPost('/api/login/sendMsg', params)
}
//忘记密码
export function forgetpw(params) {
	return AxiosPost('/api/user/forgetpw', params)
}
//注册账号
export function register(params) {
	return AxiosPost('/api/login/register', params)
}
//设置币种
export function usercurrency(params) {
	return AxiosPost('/api/user/usercurrency', params)
}
//设置交易密码
export function updatepaypw(params) {
	return AxiosPost('/api/user/updatepaypw', params)
}
//修改登录密码
export function updateloginpw(params) {
	return AxiosPost('/api/user/updateloginpw', params)
}

// 获取用户收货地址
export function listbyuid(params) {
	return AxiosPost('/api/address/listbyuid', params)
}
// 新增用户收货地址
export function save(params) {
	return AxiosPost('/api/address/save', params)
}
// 删除用户收货地址
export function del(params) {
	return AxiosPost('/api/address/del', params)
}
// 获取订单列表
export function orderlist(params) {
	return AxiosPost('/api/shoporder/orderlist', params)
}
// 获取订单详情
export function orderinfo(params) {
	return AxiosPost('/api/shoporder/orderinfo', params)
}
// 取消订单
export function changeorderstatus(params) {
	return AxiosPost('/api/shoporder/changeorderstatus', params)
}
// 确认收货订单
export function confirmreceipt(params) {
	return AxiosPost('/api/shoporder/confirmreceipt', params)
}
// 获取转入 货币类型
export function hbchangeintolist(params) {
	return AxiosPost('/api/currency/hbchangeintolist', params)
}
// 转入接口
export function hbchange(params) {
	return AxiosPost('/api/currency/hbchange', params)
}
// 资金流水
export function walletlist(params) {
	return AxiosPost('/api/wallet/walletlist', params)
}
// 转让
export function hbmove(params) {
	return AxiosPost('/api/currency/hbmove', params)
}
// 能转让信息
export function hbmoveinfo(params) {
	return AxiosPost('/api/currency/hbmoveinfo', params)
}
// 银行卡列表
export function banklist(params) {
	return AxiosPost('/api/user/banklist', params)
}
// 添加银行卡
export function savebank(params) {
	return AxiosPost('/api/user/savebank', params)
}
// 删除银行卡
export function delbank(params) {
	return AxiosPost('/api/user/delbank', params)
}
// 提现方式列表
export function configtcash(params) {
	return AxiosPost('/api/currency/configtcash', params)
}
// 提现
export function savetcash(params) {
	return AxiosPost('/api/currency/savetcash', params)
}
// 提现流水
export function tcashlist(params) {
	return AxiosPost('/api/currency/tcashlist', params)
}

// 提交充值
export function userrecharge(params) {
	return AxiosPost('/api/currency/userrecharge', params)
}
// 充值渠道
export function codelist(params) {
	return AxiosPost('/api/currency/codelist', params)
}
// 充值列表
export function rechorderlist(params) {
	return AxiosPost('/api/currency/rechorderlist', params)
}

// 获取上传图片token
export function qiniutoken(params) {
	return AxiosPost('/api/login/qiniutoken', params)
}
// // 获取上传图片token
// export function saveuserinfo(params) {
// 	return AxiosPost('/api/user/saveuserinfo', params)
// }
// 删除头像
export function delavatar(params) {
	return AxiosPost('/api/user/delavatar', params)
}
// 物流
export function trackinginfo(params) {
	return AxiosPost('/api/shoporder/trackinginfo', params)
}
// 查询充值订单状态
export function rechorderinfo(params) {
	return AxiosPost('/api/currency/rechorderinfo', params)
}
// 查询配置信息
export function agreement(params) {
	return AxiosPost('/api/shopindex/agreement', params)
}
// 我的团队
export function teamdata(params) {
	return AxiosPost('/api/user/teamdata', params)
}
// 我的团队
export function delorder(params) {
	return AxiosPost('/api/shoporder/delorder', params)
}
// 我的团队
export function wxinfo(params) {
	return AxiosPost('/api/user/wxinfo', params)
}

// 邀请码
export function wxyaoqingma(params) {
	return AxiosPost('/api/user/wxyaoqingma', params)
}






export function VersionUpdate() {
	// 判断应用的 getUpdateManager 是否在当前版本可用
	if (uni.canIUse('getUpdateManager')) {
		const updateManager = uni.getUpdateManager()
		// 向小程序后台请求完新版本信息
		updateManager.onCheckForUpdate(function(res) {
			if (res.hasUpdate) {
				//小程序有新版本，静默下载新版本，新版本下载完成
				updateManager.onUpdateReady(function() {
					//模态弹窗（确认、取消）
					uni.showModal({
						title: '更新提示',
						content: '小程序已发布新版本，是否重启？',
						success: function(res) {
							//用户点击确定
							if (res.confirm) {
								//当新版本下载完成，调用该方法会强制当前小程序应用上新版本并重启
								updateManager.applyUpdate()
							}
							//用户点击取消
							else if (res.cancel) {
								//强制用户更新，弹出第二次弹窗
								uni.showModal({
									title: '提示',
									content: '小程序已发布新版本，是否重启',
									showCancel: false, //隐藏取消按钮
									success: function(res) {
										//第二次提示后，强制更新           
										if (res.confirm) {
											// 当新版本下载完成，调用该方法会强制当前小程序应用上新版本并重启
											updateManager.applyUpdate()
										} else if (res.cancel) {
											//重新回到版本更新提示
											VersionUpdate()
										}
									}
								})
							}
						}
					})
				})
				// 当新版本下载失败
				updateManager.onUpdateFailed(function() {
					uni.showModal({
						title: '提示',
						content: '请您删除当前小程序，重新打开小程序',
					})
				})
			}
		})
	} else {
		// 提示用户在最新版本的客户端上体验
		uni.showModal({
			title: '温馨提示',
			content: '当前微信版本过低，可能无法使用该功能，请升级到最新版本后重试。'
		})
	}
}